import mongoose from 'mongoose';
//设置 strictQuery 为 true
mongoose.set('strictQuery', true);
//3. 连接 mongodb 服务                        数据库的名称,没有会自动创建
mongoose.connect('mongodb://user:1213@118.89.91.246:27017/admin2');
console.log('1111111');
//4. 设置回调
// 设置连接成功的回调  once 一次   事件回调函数只执行一次
mongoose.connection.once('open', () => {
        console.log('连接成功');
        //5. 创建文档的结构对象
        //设置集合中文档的属性以及属性值的类型
        const BookSchema = new mongoose.Schema({
            name: String,
            author: String,
            price: Number
        });
        
        //6. 创建模型对象  对文档操作的封装对象
        const BookModel = mongoose.model('book', BookSchema);
        //7. 新增文档
        //7. 新增
        BookModel.create({
            name: '西游记111111111111111',
            author: '吴承恩',
            price: 19.9
        }, (err, data) => {
            //判断是否有错误
            if (err) {
                console.log(err);
                return;
            }
            //如果没有出错, 则输出插入后的文档对象
            console.log(data);
            // //8. 关闭数据库连接 (项目运行过程中, 不会添加该代码)
            // mongoose.disconnect();
        });
       
    }
);

// 设置连接错误的回调
mongoose.connection.on('error', () => {
    console.log('连接失败');
});

//设置连接关闭的回调
mongoose.connection.on('close', () => {
    console.log('连接关闭');
});

// 关闭 mongodb 的连接
// setTimeout(() => {
//   mongoose.disconnect();
// }, 2000)
